草庐IT

c++ - boost::tokenizer 与 boost::split

全部标签

c - 为什么更改 Win32 窗口的父窗口时会出现圆角?

我正在尝试学习如何使顶级Win32窗口成为另一个窗口的子窗口。当我更改窗口的父窗口时,我仍然会看到难看的圆角,就好像它是一个带有圆形标题栏的顶级窗口一样。为什么?我该如何解决这个问题?(我无法得到WM_UPDATEUISTATE的帮助,但我也不确定如何正确使用它。)#include#include#includeint_tmain(){WNDCLASSwndClass={0,&DefWindowProc,0,0,NULL,NULL,LoadCursor(NULL,IDC_ARROW),GetSysColorBrush(COLOR_3DFACE),NULL,TEXT("MyWindowC

c - Visual Studio 2010 中的 Langinfo.h

如何将langinfo.h包含到我的VisualStudio2010C项目中。我试过了#include,但是在VS2010环境下好像没有这个头文件。我需要获取语言环境的开始工作日,但我现在只使用这个库。所以,问题是如何解决我的问题:如何包含langinfo.h,或者如何从工作日开始获取当前语言环境。 最佳答案 我认为,您应该使用GetLocaleInfoEx()函数。例如,要获取一周的开始日期,可以使用这些调用:#ifdefined(_WIN32_WINNT_VISTA)&&WINVER>=_WIN32_WINNT_VISTA&&d

c - Windows 上的 PETSc 安装

我正在尝试在Windows7上安装PETSc库以与VisualStudioExpress2008一起使用,但到目前为止我没有成功。我用python、make、diff安装了cygwin(默认安装)。然后我点击了VS2008Exp->Tools->VSCommandPrompt我去了Petsc目录cygdrive/d/Workspace/PETSc/petsc-2.3.3-p13从那里我试过了anofficialsuggestion首先安装“MicrosoftHPCPack2008R2”和“MicrosoftHPCPack2008R2SDK”但是我有一个错误“无法使用给定的选项进行配置”

C - 运行可执行文件并检索输出

我想做的是创建一个程序,该程序将在运行时使用“--exampleparameter--exampleparameter2”作为cli输入打开examplecliprogram.exe,等待examplecliprogram.exe终止,然后获取输出和用它做一些有用的事情。我希望examplecliprogram.exe在后台运行(而不是在另一个窗口中打开),而examplecliprogram.exe的输出显示在运行开销程序的窗口中。到目前为止,我已经研究过诸如popen()、ShellExecute()和CreateProcess()之类的选项,但我似乎无法使它们中的任何一个正常工作

c - 从c中的文件中读取所有字节

我正在尝试从文件中读取字节,但大小已损坏。调试时我可以看到st.st_size的值,但我无法读取size的值。intmain(void){FILE*oud;structstatst;_off_tsize;unsigned*bytes;charconstpath[]="C:\\Users\\Ruben\\Documents\\test.txt";errno_terror;if((error=fopen_s(&oud,path,"rb"))!=NULL)return-1;stat(path,&st);size=st.st_size;bytes=(unsigned*)malloc(size)

c++ - shell_notifyicon : an attempt was made to reference a token that does not exist, 没有显示图标

我看到通知气球,但没有显示图标。在成功(返回TRUE)调用Shell_NotifyIcon后出现Windows错误:尝试引用不存在的token。主要问题是为什么我看不到图标?使用最新更新的Windows7。这是一个代码片段:namespacetray_tip{#defineFINAL_INIT(tip,title,ic,icon_id,inst)\if(icon)\{\staticconstGUIDmyGUID=\{0x23977b55,0x10e0,0x4041,{0xb8,0x62,0xb1,0x95,0x41,0x96,0x36,0x69}};\data.guidItem=myG

c - SDL+OpenGL 在 linux 下工作但在 windows 下不工作,不是编译器/链接器问题

好吧,关于我一直从事的项目,我遇到了一个非常奇怪的问题。该项目是一个3D引擎(分别使用SDL和openGL进行输入处理和图形处理)。在过去的几个月里,我一直在linux(Ubuntu10.10)中从事这个项目,最近决定将代码移植到Windows7环境中。我选择SDL的主要原因之一是它独立于操作系统处理窗口创建,这意味着从一个操作系统移植到另一个操作系统应该相当简单。我在编译或链接时没有遇到问题,问题是完全相同的代码显然没有理由以两种完全不同的方式运行。首先,一个差异的可视化示例:http://i.stack.imgur.com/RNcCs.jpg它不应该这样看,首先左下角的紫色revt

c - 如何在不知道其名称的情况下获取 JobObject 的句柄?

我的应用程序正在作业中运行。我想使用OpenJobObject获取此Jobobject的句柄,以便稍后使用此句柄。问题是,我不知道作业名称,将NULL传递给作业名称会返回错误87(参数不正确)。我是这样尝试的:HANDLEhandle=OpenJobObject(JOB_OBJECT_QUERY,FALSE,NULL);if(!handle)printf("\nError%d",GetLastError());elseprintf("\nOK");我也在MSDN上找到了这个:应用程序无法获得运行它的作业对象的句柄,除非它具有作业对象的名称。但是,应用程序可以使用NULL调用QueryI

c - Visual-C++ 内联汇编程序编译不正确

最近我向社区询问了两个偏移量的差异Visual-C++inlineassemblerdifferenceoftwooffsets并很快得到回复,非常感谢。现在我遇到了另一个问题,这个问题更糟。我有这样的指令..naked...__asm{...moveax,dwordptr[ebx+offsetdata1]...}真正的问题是它被编译为moveax,[offsetdata1]此行没有编译器警告(/WAll模式),但代码已更改且更改很多-想象一下,它完全被抛出ebx+部分!默默。它是编译器错误还是功能?也许我必须指定一些额外的标志?问题仅在于偏移量,因为moveax,dwordptr[e

windows - 安装boost.log(使用代码块12.11 + gcc 4.7.1的Windows 7)

我试图在代码块12.11上构建并运行boost.log库。我没有boost和boost.log的经验,想学习它,所以,首先我需要安装它。安装Boost首先,我遵循howtoinstallboostusingcodeblocks上的步骤结果在两台不同的计算机上(都有Windows7),我在%mypath%\boost\lib中得到了不同的文件列表(一台电脑只有6个文件,另一台52个)更大的列表是:libboost_chrono-mgw47-mt-1_52.a公司libboost_chrono-mgw47-mt-d-1_52.a公司libboost_date_时间-mgw47-mt-1_5